# AItar

## Назначение

Персональный телеграм-бот для генерации ИИ-портретов по присланному фото на базе моделей StableDIffusion SD1.5 и IP-Adapter FaceID. 
Поддерживает несколько стилей генерации, модели и промты задаются в файле конфигурации (styles.py). Можно настроить количество генерируемых картинок. 
Бот понимает команды /settings и /stop для задания настроек и остановки генерации. Бот однозадачный - только одна генерация в один момент времени.

Принцип работы - бот получает фото, определяет пол, изолирует человека на белом фоне, корректирует яркость и контраст фото, на базе прописанных в файле стилей промтов генерирует изображение, на сгенерированное фото накладываются инстафильтры и оно отправляется обратно. Файлы на сервер не сохраняются.

Для работы нужен GPU nVidia (VRAM 8Gb+). На RTX4060 генерация одной картинки занимает около 15 секунд.


## Установка

1. Установка зависимостей для CV2
```bash
sudo apt-get update && sudo apt-get install ffmpeg libsm6 libxext6 python3-dev gcc g++ -y
```
2. Установка в venv
```bash
wget https://gitverse.ru/api/repos/schmeeow/aItar/archive/master.tar.gz
tar -xf master.tar.gz
rm -f master.tar.gz
cd aitar
python3 -m venv .
source ./bin/activate
pip install -r requirements.txt
wget https://huggingface.co/h94/IP-Adapter-FaceID/resolve/main/ip-adapter-faceid-plus_sd15.bin
```
3. Настройка
* Указать в *main.py* в переменной *BOT_TOKEN* токен своего бота
* Запустить бота - python3 main.py<br>

При первом запуске бот скачает и кэширует модели с hugging-face


## Поблагодарить
* [Оставить на кофе](https://pay.cloudtips.ru/p/b34242db)


##